package cn.qj.ymcc.service;

import cn.qj.ymcc.domain.PayOrder;
import cn.qj.ymcc.dto.AlipayNotifyDto;
import cn.qj.ymcc.dto.ApplyDto;
import com.baomidou.mybatisplus.service.IService;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author whale
 * @since 2025-07-31
 */
public interface IPayOrderService extends IService<PayOrder> {
    /**
     * 根据订单编号 查询订单是否生成
     * @param orderNo
     * @return
     */
    PayOrder checkPayOrder(String orderNo);

    /**
     * 申请支付
     * @param applyDto
     * @return
     */
    String apply(ApplyDto applyDto);


    /**
     * 异步回调
     * @param alipayNotifyDto
     * @return
     */
    String notifyPay(AlipayNotifyDto alipayNotifyDto);

    /**
     * 取消订单
     * @param orderNo
     */
    void cancelOrder(String orderNo);

    /**
     * 根据订单号查询订单状态 支付宝那边的
     * @param orderNo
     */
    String checkPayStatus(String orderNo);
}
